31 research outputs found
!-Graphs with Trivial Overlap are Context-Free
String diagrams are a powerful tool for reasoning about composite structures
in symmetric monoidal categories. By representing string diagrams as graphs,
equational reasoning can be done automatically by double-pushout rewriting.
!-graphs give us the means of expressing and proving properties about whole
families of these graphs simultaneously. While !-graphs provide elegant proofs
of surprisingly powerful theorems, little is known about the formal properties
of the graph languages they define. This paper takes the first step in
characterising these languages by showing that an important subclass of
!-graphs--those whose repeated structures only overlap trivially--can be
encoded using a (context-free) vertex replacement grammar.Comment: In Proceedings GaM 2015, arXiv:1504.0244
Computational Adequacy for Substructural Lambda Calculi
Substructural type systems, such as affine (and linear) type systems, are
type systems which impose restrictions on copying (and discarding) of
variables, and they have found many applications in computer science, including
quantum programming. We describe one linear and one affine type systems and we
formulate abstract categorical models for both of them which are sound and
computationally adequate. We also show, under basic assumptions, that
interpreting lambda abstractions via a monoidal closed structure (a popular
method for linear type systems) necessarily leads to degenerate and inadequate
models for call-by-value affine type systems with recursion. In our categorical
treatment, a solution to this problem is clearly presented. Our categorical
models are more general than linear/non-linear models used to study linear
logic and we present a homogeneous categorical account of both linear and
affine type systems in a call-by-value setting. We also give examples with many
concrete models, including classical and quantum ones.Comment: In Proceedings ACT 2020, arXiv:2101.0788
The ZX-calculus is incomplete for quantum mechanics
We prove that the ZX-calculus is incomplete for quantum mechanics. We suggest
the addition of a new 'color-swap' rule, of which currently no analytical
formulation is known and which we suspect may be necessary, but not sufficient
to make the ZX-calculus complete.Comment: In Proceedings QPL 2014, arXiv:1412.810
Central Submonads and Notions of Computation
The notion of "centre" has been introduced for many algebraic structures in
mathematics. A notable example is the centre of a monoid which always
determines a commutative submonoid. Monads in category theory are important
algebraic structures that may be used to model computational effects in
programming languages and in this paper we show how the notion of centre may be
extended to strong monads acting on symmetric monoidal categories. We show that
the centre of a strong monad , if it exists, determines a
commutative submonad of , such that the Kleisli
category of is isomorphic to the premonoidal centre (in the sense
of Power and Robinson) of the Kleisli category of . We provide
three equivalent conditions which characterise the existence of the centre of
and we show that every strong monad on many well-known naturally
occurring categories does admit a centre, thereby showing that this new notion
is ubiquitous. We also provide a computational interpretation of our ideas
which consists in giving a refinement of Moggi's monadic metalanguage. The
added benefit is that this allows us to immediately establish a large class of
contextually equivalent programs for computational effects that are described
via monads that admit a non-trivial centre by simply considering the richer
syntactic structure provided by the refinement.Comment: 25 pages + 8 pages references and appendi
Quantum Programming with Inductive Datatypes: Causality and Affine Type Theory
Inductive datatypes in programming languages allow users to define useful
data structures such as natural numbers, lists, trees, and others. In this
paper we show how inductive datatypes may be added to the quantum programming
language QPL. We construct a sound categorical model for the language and by
doing so we provide the first detailed semantic treatment of user-defined
inductive datatypes in quantum programming. We also show our denotational
interpretation is invariant with respect to big-step reduction, thereby
establishing another novel result for quantum programming. Compared to
classical programming, this property is considerably more difficult to prove
and we demonstrate its usefulness by showing how it immediately implies
computational adequacy at all types. To further cement our results, our
semantics is entirely based on a physically natural model of von Neumann
algebras, which are mathematical structures used by physicists to study quantum
mechanics
Semantics for a Lambda Calculus for String Diagrams
To appear in a special issue in the series "Outstanding Contributions to Logic" dedicated to Samson Abramsky.Linear/non-linear (LNL) models, as described by Benton, soundly model a LNL term calculus and LNL logic closely related to intuitionistic linear logic. Every such model induces a canonical enrichment that we show soundly models a LNL lambda calculus for string diagrams, introduced by Rios and Selinger (with primary application in quantum computing). Our abstract treatment of this language leads to simpler concrete models compared to those presented so far. We also extend the language with general recursion and prove soundness. Finally, we present an adequacy result for the diagram-free fragment of the language which corresponds to a modified version of Benton and Wadler's adjoint calculus with recursion. In keeping with the purpose of the special issue, we also describe the influence of Samson Abramsky's research on these results, and on the overall project of which this is a part
Quantum Programming with Inductive Datatypes
Inductive datatypes in programming languages allow users to define useful data structures such as natural numbers, lists, trees, and others. In this paper we show how inductive datatypes may be added to the quantum programming language QPL. We construct a sound categorical model for the language and by doing so we provide the first detailed semantic treatment of user-defined inductive datatypes in quantum programming. We also show our denotational interpretation is invariant with respect to big-step reduction, thereby establishing another novel result for quantum programming. Compared to classical programming, this property is considerably more difficult to prove and we demonstrate its usefulness by showing how it immediately implies computational adequacy at all types. To further cement our results, our semantics is entirely based on a physically natural model of von Neumann algebras, which are mathematical structures used by physicists to study quantum mechanics
Quantum Expectation Transformers for Cost Analysis
International audienceWe introduce a new kind of expectation transformer for a mixed classical-quantum programming language. Our semantic approach relies on a new notion of a cost structure, which we introduce and which can be seen as a specialisation of the Kegelspitzen of Keimel and Plotkin. We show that our weakest precondition analysis is both sound and adequate with respect to the operational semantics of the language. Using the induced expectation transformer, we provide formal analysis methods for the expected cost analysis and expected value analysis of classical-quantum programs. We illustrate the usefulness of our techniques by computing the expected cost of several well-known quantum algorithms and protocols, such as coin tossing, repeat until success, entangled state preparation, and quantum walks